/**
 * 
 */
package com.kunbo.cn.util.tree;

import java.util.ArrayList;
import java.util.List;

import com.kunbo.cn.entity.core.inventory.Organization;


/**
 *
 * @author bjl  
 * @date 2019年2月28日 
 */
public class OrganizationTreeUtil {
	public List data(List<Organization> nodes) {
        ArrayList<Organization> rootNode = new ArrayList<Organization>();
             for(Organization node:nodes){
                  if(node.getPid().equals("0")){
                        rootNode.add(node);
                  }
             }
             for(Organization node:rootNode){
                 List<Organization> child = getChild(String.valueOf(node.getId()), nodes);
                 node.setChildren(child);
             }
             return rootNode;
    }


    /**
     * @return
     * @Author
     * @Description //TODO 获取根节点的子节点
     * @Date 2018/10/30 0030 下午 11:37
     * @Param
     */
    public List<Organization> getChild(String id, List<Organization> allNode) {
        //存放子菜单的集合
        ArrayList<Organization> listChild = new ArrayList<>();
        for (Organization node : allNode) {
            if (node.getPid().equals(id)) {
                listChild.add(node);
            }
        }
        //递归：
        for (Organization node : listChild) {
            node.setChildren(getChild(String.valueOf(node.getId()), allNode));
        }
        if (listChild.size() == 0) {
            return null;
        }
        return listChild;
    }
}
